import axios from 'axios'
import { Message } from 'element-ui'

axios.defaults.timeout = 5000

// http 拦截器
// axios.interceptors.request.use(
//   config => {
//     // const token = getCookie('名称');注意使用的时候需要引入cookie方法，推荐js-cookie
//     config.data = JSON.stringify(config.data);
//     config.headers = {
//       "Content-Type": "application/x-www-form-urlencoded"
//     };
//     // if(token){
//     //   config.params = {'token':token}
//     // }
//     return config;
//   },
//   error => {
//     return Promise.reject(error);
//   }
// );

export function get (url, params = {}) {
  return new Promise((resolve, reject) => {
    axios
      .get(url, {
        params: params
      })
      .then(response => {
        if (response.status === 200 && response.data.message === 'success') {
          resolve(response.data)
        } else {
          Message.error({
            showClose: true,
            message: response.data.message
          })
          reject(response.data.message)
        }
      })
      .catch(error => {
        Message.error({
          showClose: true,
          message: error
        })
        reject(error)
      })
  })
}

export function post (url, data = {}) {
  return new Promise((resolve, reject) => {
    axios.post(url, data).then(
      response => {
        if (response.status === 200 && response.data.message === 'success') {
          resolve(response.data)
        } else {
          Message.error({
            showClose: true,
            message: response.data.message
          })
          reject(response.data.message)
        }
      },
      error => {
        Message.error({
          showClose: true,
          message: error
        })
        reject(error)
      }
    )
  })
}
